﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;

using SlideRight.Konfiguration;

namespace SlideRight
{
    public partial class UntertitelFrm : Form
    {
        Konfig _konfig;

        public void ShowDialog(Konfig _konfig)
        {
            this._konfig = _konfig;
            this.ShowDialog();
        }

        public UntertitelFrm()
        {
            InitializeComponent();
            InitBilder();
            Untertitel.Init();
        }

        private void InitBilder()
        {
            Konfig konfig = new Konfig("slideright");
            string BilderOrdner = konfig.Wert("Ordner");
            Button btTemp;
            Label lbTemp;

            int count = 1;

            foreach (string Bild in Directory.GetFiles(BilderOrdner, "*.jpg"))
            {
                btTemp = new Button();
                btTemp.Size = new System.Drawing.Size(32, 32);
                btTemp.Location = new Point(10, count * 32 + count * 1);
                btTemp.Name = Bild;
                btTemp.Click += new EventHandler(pbHdlr);

                lbTemp = new Label();
                lbTemp.Text = Bild.Split('\\')[Bild.Split('\\').Length - 1];
                lbTemp.Click += new EventHandler(lbHdlr);
                lbTemp.Name = Bild;
                lbTemp.Location = new Point(45, count * 32 + count * 1 + 12);

                count++;
                pnlBilderWahl.Controls.Add(btTemp);
                pnlBilderWahl.Controls.Add(lbTemp);
            }
        }

        void pbHdlr(object sender, EventArgs e)
        {
            Button Temp = (Button)sender;
            SetPreview(Temp.Name);
        }

        void lbHdlr(object sender, EventArgs e)
        {
            Label Temp = (Label)sender;
            SetPreview(Temp.Name);
        }

        void SetPreview(string Bild)
        {
            string Datei =  Bild.Split('\\')[Bild.Split('\\').Length - 1];
            pbVorschau.Image = Image.FromFile(Bild);
            lbDateiname.Text = Datei;
            try
            {
                tbxUntertitel.Text = Untertitel.Liste[Datei][0];
                tbxQuelle.Text = Untertitel.Liste[Datei][1];
            }
            catch 
            {
                tbxUntertitel.Text = "";
                tbxQuelle.Text = "";
            }
            tbxQuelle.Enabled = true;
            tbxUntertitel.Enabled = true;
            btnSpeichern.Enabled = true;
        }

        private void btnSpeichern_Click(object sender, EventArgs e)
        {
            if (Untertitel.Set(lbDateiname.Text, new string[] { tbxUntertitel.Text, tbxQuelle.Text }))
            {
                Untertitel.Init();
                MessageBox.Show("Untertitel erfolgreich geändert.");
            }
            else
            {
                MessageBox.Show("Fehler beim ändern");
            }
        }
    }
}
